Inkjet printers that form dots on paper by ejecting ink from a plurality of nozzles formed in a print head are well known in the art. A conventional image processing apparatus stores a table in which the fluctuating property of an ink ejection quantity is recorded for each nozzle. After the image processing apparatus sets the dot formation state to indicate that a dot is to be formed for a target pixel in an error diffusion process, the image processing apparatus then calculates an error value to be distributed from the target pixel to pixels that have not yet been processed. Here, the image processing apparatus corrects values specifying the densities of dots based on the fluctuating properties recorded in the table and calculates error values based on these corrected density values. Through this process, the image processing apparatus can achieve high-quality printing.